use crate::ApiError;
use axum::extract::FromRequest;

/// 通过[axum::Form]提取器实现自己的提取器
///
/// 可以返回自定义的数据结构和状态码
#[derive(FromRequest)]
#[from_request(via(axum::Form), rejection(ApiError))]
pub struct Form<T>(pub T);


/// 简化[Valid<Form<T>>]的提取器
#[derive(Debug)]
pub struct ValidForm<T>(pub T);